package pms.theme.service;

import java.util.List;

import pms.common.value.ProgressValue;
import pms.common.value.ProjectValue;
import pms.common.value.ReviewValue;
import pms.common.value.TargetValue;
import pms.common.value.ThemeValue;
import pms.common.value.UserSessionValue;

public interface ThemeService {
	public List<ProjectValue> getProjectList();
	public List<ThemeValue> getThemeList(int projectId);
	public void updateTheme(ThemeValue value);
	public void insertTheme(ThemeValue value);
	public void deleteTheme(int themeId, int userId);
	public List<TargetValue> getTargetList(int themeId);
	public void updateTarget(TargetValue value);
	public void insertTarget(TargetValue value);
	public void deleteTarget(int targetId, int userId);
	public List<ProgressValue> getProgressList(int targerId);
	public void insertProgress(ProgressValue value);
	public List<ReviewValue> getReviewList(int targetId,  String targetName, List<UserSessionValue> userList);
	public void insertReview(ReviewValue value);
	public void updateReview(ReviewValue value);
	public void deleteReview(int themeId, int targetId, int reviewId);
	public void admitReview(int userId, int themeId, int targetId, int reviewId);
	public void reviewExport(int themeId, List<UserSessionValue> userList, List<TargetValue> targetList, String themeName, String projectName);
}
